class CStr
{
public:
	CStr(const char *pszTest)
	{
		if (NULL != pszTest)
		{
			int nLen = strlen(pszTest);
			m_pszTest = new char[nLen+1];
			strcpy(m_pszTest, pszTest);
		}
		else
		{
			m_pszTest = new char[1];
			m_pszTest[0] = '\0';
		}
	}
	~CStr()
	{
		if (NULL != m_pszTest)
		{
			delete[] m_pszTest;
			m_pszTest = NULL;
		}
	}
	void Show()
	{
		if (NULL != m_pszTest)
		{
			cout<<m_pszTest<<endl;
		}
	}
private:
	char *m_pszTest;
};

void TestFun(CStr s)
{
	s.Show();
}

void main()
{
	CStr objS("Test");
	TestFun(objS);
	objS.Show();
}